package xin.codedream.codelog.dao;

import org.apache.ibatis.annotations.Param;
import xin.codedream.codelog.model.entity.ArticleTag;

import java.util.List;
import java.util.Set;

/**
 * 文章标签数据访问层
 *
 * @author NGLSL
 * @date 2018/8/19
 */
public interface ArticleTagDao {
    /**
     * 插入文章相关联的标签
     *
     * @param articleTags 文章标签数据
     * @return int
     */
    int insertArticleTags(ArticleTag articleTags);

    /**
     * 通过文章Id查询标签信息
     *
     * @param articleId 文章Id
     * @return List
     */
    List<ArticleTag> listArticleTagsByArticleId(@Param("articleId") Long articleId);

    /**
     * 通过文章编号删除文章标签
     *
     * @param articleId 文章编号
     * @param tags      不需要删除的标签编号
     * @return int
     */
    int deleteArticleTagByArticleId(@Param("articleId") Long articleId, @Param("tags") Set<Long> tags);
}
